The present invention relates to the field of communications in general and more particularly to bandwidth allocation for a downstream channel.
With the rise in popularity of the Internet and other bi-directional communication services, new demands have been placed upon existing communications infrastructure to support the provision of such services. In light of the typical bandwidth limitations of the Public Switched Telephone Network (PSTN) commonly used for communications such as the Internet data communications, there have been efforts to provide these services over the Cable Television System (CATV) system. CATV typically provides a coaxial wired connection from a cable system service provider facility to end users. While CATV system has primarily been used to deliver downstream communications from the cable system service provider facility to the end users (such as cable television signals), it may also support upstream communications from end users to the CATV system provider. The downstream channel (side) is typically a one-to-many distribution network, the upstream channel is typically a many-to-one distribution network. As providing these services over the broadband cable network becomes more popular, bandwidth constraints of even the broadband downstream channel of the CATV system may pose problems.
Furthermore, as the Internet has been used for different types of media, such as streaming audio and streaming video, different levels of service have been used. Generally these different types of service may be categorized based on Quality of Service (QoS) criteria, such as guaranteed bandwidth, packet loss or the like. However, with a shared downstream channel QoS in a CATV system may be difficult, especially, when the system is over subscribed.
As mentioned above, the broadband cable network may support multiple classes of service, different traffic characteristics, and QoS requirements. QoS is typically supported by packet classification, flow admission, bandwidth allocation and buffer management. Flow admission typically requires users who request services at a certain QoS level to be admitted or denied access to the system depending on whether the QoS level can be supported. This generally results in either limiting the number of users that can subscribe to the system to the maximum number of users that can be supported or denying services to users during peak usage times. Existing systems typically drop low priority packets when the system is oversubscribed, and therefore typically sacrifice the QoS of the system. Accordingly, there is a need for improved methods of allocating bandwidth in order to preserve the QoS of the system.